package in.lib.view;
import in.model.SimpleUser;
import lombok.Getter;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AutoCompleteTextView;
public class UserSuggestView extends AutoCompleteTextView implements OnItemClickListener
{
@Getter private SimpleUser selectedUser;
private OnItemClickListener listener;
public UserSuggestView(Context context, AttributeSet attrs)
{
super(context, attrs);
setOnItemClickListener(this);
}
@Override public void setOnItemClickListener(OnItemClickListener l)
{
if (l == this)
{
super.setOnItemClickListener(l);
}
else
{
listener = l;
}
}
@Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
if (listener != null)
{
listener.onItemClick(arg0, arg1, arg2, arg3);
}
selectedUser = (SimpleUser)getAdapter().getItem(arg2);
}
/* Overriding this method and returning String type solves the problem */
@Override protected CharSequence convertSelectionToString(Object selectedItem)
{
SimpleUser selectedUser = (SimpleUser)selectedItem;
return "@" + selectedUser.getMentionName();
}
}